﻿using System;
using System.Collections.Generic;
using System.Data.Objects;
using System.Linq;
using System.Text;

namespace Repository.Common
{
    public interface IRepository<T> where T : class
    {
        List<T> GetAll();
        T GetById(int id);
        ObjectQuery<T> GetQuery();
        void AddObject(T obj);
        void AttachObject(T obj);
        void Insert(T obj);
        void Update(T obj);
        void Delete(T obj);
        List<T> Paging(int pageIndex, int numOfRows);
        int GetTotalPage(int numOfRows);
    }
}
